<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../../../../../style.css" type="text/css" media="screen">
<link rel="stylesheet" href="../../../../../../print.css" type="text/css" media="print">
<meta content="Spring,org.generalrelativity.foam.dynamics.force.spring.Spring,element1,element2,k,damp,_restLength,restLength,generate,clone,invert,getPoint1InWorldSpace,getPoint2InWorldSpace,createDoubleSidedSpring" name="keywords">
<title>org.generalrelativity.foam.dynamics.force.spring.Spring</title>
</head>
<body>
<script type="text/javascript" language="javascript" src="../../../../../../asdoc.js"></script><script type="text/javascript" language="javascript" src="../../../../../../cookies.js"></script><script type="text/javascript" language="javascript">
<!--
				asdocTitle = 'Spring - API Documentation';
				var baseRef = '../../../../../../';
				window.onload = configPage;
			--></script>
<table style="display:none" id="titleTable" cellspacing="0" cellpadding="0" class="titleTable">
<tr>
<td align="left" class="titleTableTitle">API Documentation</td><td align="right" class="titleTableTopNav"><a onclick="loadClassListFrame('../../../../../../all-classes.html')" href="../../../../../../package-summary.html">All&nbsp;Packages</a>&nbsp;|&nbsp;<a onclick="loadClassListFrame('../../../../../../all-classes.html')" href="../../../../../../class-summary.html">All&nbsp;Classes</a>&nbsp;|&nbsp;<a onclick="loadClassListFrame('../../../../../../index-list.html')" href="../../../../../../all-index-A.html">Index</a>&nbsp;|&nbsp;<a href="../../../../../../index.html?org/generalrelativity/foam/dynamics/force/spring/Spring.html&amp;org/generalrelativity/foam/dynamics/force/spring/class-list.html" id="framesLink1">Frames</a><a onclick="parent.location=document.location" href="" style="display:none" id="noFramesLink1">No&nbsp;Frames</a></td><td rowspan="3" align="right" class="titleTableLogo"><img alt="Adobe Logo" title="Adobe Logo" class="logoImage" src="../../../../../../images/logo.jpg"></td>
</tr>
<tr class="titleTableRow2">
<td align="left" id="subTitle" class="titleTableSubTitle">Class&nbsp;Spring</td><td align="right" id="subNav" class="titleTableSubNav"><a href="#propertySummary">Properties</a>&nbsp;| <a href="#methodSummary">Methods</a></td>
</tr>
<tr class="titleTableRow3">
<td colspan="2">&nbsp;</td>
</tr>
</table>
<script type="text/javascript" language="javascript">
<!--
if (!isEclipse() || window.name != ECLIPSE_FRAME_NAME) {titleBar_setSubTitle("Class Spring"); titleBar_setSubNav(false,true,false,false,false,false,true,false,false,false,false,false,false,false);}
--></script>
<div class="MainContent">
<table cellspacing="0" cellpadding="0" class="classHeaderTable">
<tr>
<td class="classHeaderTableLabel">Package</td><td><a onclick="javascript:loadClassListFrame('class-list.html')" href="package-detail.html">org.generalrelativity.foam.dynamics.force.spring</a></td>
</tr>
<tr>
<td class="classHeaderTableLabel">Class</td><td class="classSignature">public class Spring</td>
</tr>
<tr>
<td class="classHeaderTableLabel">Inheritance</td><td class="inheritanceList">Spring <img class="inheritArrow" alt="Inheritance" title="Inheritance" src="../../../../../../images/inherit-arrow.gif"> <a href="../SimpleForceGenerator.html">SimpleForceGenerator</a></td>
</tr>
<tr>
<td class="classHeaderTableLabel">Implements</td><td><a href="../IForceGenerator.html">IForceGenerator</a></td>
</tr>
<tr>
<td class="classHeaderTableLabel">Subclasses</td><td><a href="../spring/Bungee.html">Bungee</a>, <a href="../spring/RigidBodySpring.html">RigidBodySpring</a></td>
</tr>
</table>
<p></p>
<p></p>
<br>
<hr>
</div>
<a name="propertySummary"></a>
<div class="summarySection">
<div class="summaryTableTitle">Public Properties</div>
<table id="summaryTableProperty" class="summaryTable " cellpadding="3" cellspacing="0">
<tr>
<th>&nbsp;</th><th colspan="2">Property</th><th class="summaryTableOwnerCol">Defined&nbsp;by</th>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#restLength">restLength</a> : Number<div class="summaryTableDescription">[write-only]</div>
</td><td class="summaryTableOwnerCol">Spring</td>
</tr>
</table>
</div>
<a name="protectedPropertySummary"></a>
<div class="summarySection">
<div class="summaryTableTitle">Protected Properties</div>
<div class="showHideLinks">
<div class="hideInheritedProtectedProperty" id="hideInheritedProtectedProperty">
<a onclick="javascript:setInheritedVisible(false,'ProtectedProperty');" href="#protectedPropertySummary" class="showHideLink"><img src="../../../../../../images/expanded.gif" class="showHideLinkImage"> Hide Inherited Protected Properties</a>
</div>
<div class="showInheritedProtectedProperty" id="showInheritedProtectedProperty">
<a onclick="javascript:setInheritedVisible(true,'ProtectedProperty');" href="#protectedPropertySummary" class="showHideLink"><img src="../../../../../../images/collapsed.gif" class="showHideLinkImage"> Show Inherited Protected Properties</a>
</div>
</div>
<table id="summaryTableProtectedProperty" class="summaryTable " cellpadding="3" cellspacing="0">
<tr>
<th>&nbsp;</th><th colspan="2">Property</th><th class="summaryTableOwnerCol">Defined&nbsp;by</th>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#damp">damp</a> : Number<div class="summaryTableDescription"> damping </div>
</td><td class="summaryTableOwnerCol">Spring</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#element1">element1</a> : <a href="../../element/ISimulatable.html">ISimulatable</a>
<div class="summaryTableDescription"> element to generate spring force on </div>
</td><td class="summaryTableOwnerCol">Spring</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#element2">element2</a> : <a href="../../element/ISimulatable.html">ISimulatable</a>
<div class="summaryTableDescription"> element to connect "other" end of spring to </div>
</td><td class="summaryTableOwnerCol">Spring</td>
</tr>
<tr class="hideInheritedProtectedProperty">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol"><img class="inheritedSummaryImage" title="Inherited" alt="Inherited" src="../../../../../../images/inheritedSummary.gif"></td><td class="summaryTableSignatureCol"><a class="signatureLink" href="../SimpleForceGenerator.html#_force">_force</a> : <a href="../../../math/Vector.html">Vector</a>
<div class="summaryTableDescription"> force to apply to element(s) </div>
</td><td class="summaryTableOwnerCol"><a href="../SimpleForceGenerator.html">SimpleForceGenerator</a></td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#k">k</a> : Number<div class="summaryTableDescription"> spring coefficient (0 - 1.0) </div>
</td><td class="summaryTableOwnerCol">Spring</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#_restLength">_restLength</a> : Number<div class="summaryTableDescription"> the spring's happy length (where no force is generated </div>
</td><td class="summaryTableOwnerCol">Spring</td>
</tr>
</table>
</div>
<a name="methodSummary"></a>
<div class="summarySection">
<div class="summaryTableTitle">Public Methods</div>
<table id="summaryTableMethod" class="summaryTable " cellpadding="3" cellspacing="0">
<tr>
<th>&nbsp;</th><th colspan="2">Method</th><th class="summaryTableOwnerCol">Defined&nbsp;by</th>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#Spring()">Spring</a>(element1:<a href="../../element/ISimulatable.html">ISimulatable</a>, element2:<a href="../../element/ISimulatable.html">ISimulatable</a>, k:Number = 0.01, damp:Number = 0.4)</div>
<div class="summaryTableDescription">
   Constructs a new Spring
   
   </div>
</td><td class="summaryTableOwnerCol">Spring</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#clone()">clone</a>(invert:Boolean = true):<a href="../spring/Spring.html">Spring</a>
</div>
<div class="summaryTableDescription">
   Clone's a Spring for use with another element
   
   </div>
</td><td class="summaryTableOwnerCol">Spring</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#createDoubleSidedSpring()">createDoubleSidedSpring</a>(element1:<a href="../../element/ISimulatable.html">ISimulatable</a>, element2:<a href="../../element/ISimulatable.html">ISimulatable</a>, k:Number = 0.01, damp:Number = 0.1):void</div>
<div class="summaryTableDescription">[static]
   Creates forces for both elements
   </div>
</td><td class="summaryTableOwnerCol">Spring</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#generate()">generate</a>(element:<a href="../../element/ISimulatable.html">ISimulatable</a>):void</div>
<div class="summaryTableDescription"></div>
</td><td class="summaryTableOwnerCol">Spring</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#getPoint1InWorldSpace()">getPoint1InWorldSpace</a>():<a href="../../../math/Vector.html">Vector</a>
</div>
<div class="summaryTableDescription"></div>
</td><td class="summaryTableOwnerCol">Spring</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#getPoint2InWorldSpace()">getPoint2InWorldSpace</a>():<a href="../../../math/Vector.html">Vector</a>
</div>
<div class="summaryTableDescription"></div>
</td><td class="summaryTableOwnerCol">Spring</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#invert()">invert</a>():void</div>
<div class="summaryTableDescription">
   Inverts the spring so that the force is applied to element2 instead of 1
   </div>
</td><td class="summaryTableOwnerCol">Spring</td>
</tr>
</table>
</div>
<script type="text/javascript" language="javascript">
<!--
showHideInherited();
--></script>
<div class="MainContent">
<a name="propertyDetail"></a>
<div class="detailSectionHeader">Property detail</div>
<a name="damp"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">damp</td><td class="detailHeaderType">property</td>
</tr>
</table>
<div class="detailBody">
<code>protected var damp:Number</code><p> damping </p></div>
<a name="element1"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">element1</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>protected var element1:<a href="../../element/ISimulatable.html">ISimulatable</a></code><p> element to generate spring force on </p></div>
<a name="element2"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">element2</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>protected var element2:<a href="../../element/ISimulatable.html">ISimulatable</a></code><p> element to connect "other" end of spring to </p></div>
<a name="k"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">k</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>protected var k:Number</code><p> spring coefficient (0 - 1.0) </p></div>
<a name="_restLength"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">_restLength</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>protected var _restLength:Number</code><p> the spring's happy length (where no force is generated </p></div>
<a name="restLength"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">restLength</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>restLength:Number</code>&nbsp;&nbsp;[write-only]<span class="label">Implementation</span>
<br>
<code>&nbsp;&nbsp;&nbsp;&nbsp;public function set restLength(value:Number):void</code>
<br>
</div>
<a name="constructorDetail"></a>
<div class="detailSectionHeader">Constructor detail</div>
<a name="Spring()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">Spring</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">constructor</td>
</tr>
</table>
<div class="detailBody">
<code>public function Spring(element1:<a href="../../element/ISimulatable.html">ISimulatable</a>, element2:<a href="../../element/ISimulatable.html">ISimulatable</a>, k:Number = 0.01, damp:Number = 0.4)</code><p>
   Constructs a new Spring
   
   </p><span class="label">Parameters</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20px"></td><td><code><span class="label">element1</span>:<a href="../../element/ISimulatable.html">ISimulatable</a></code> &mdash; element to generate spring force on
   </td>
</tr>
<tr>
<td class="paramSpacer">&nbsp;</td>
</tr>
<tr>
<td width="20px"></td><td><code><span class="label">element2</span>:<a href="../../element/ISimulatable.html">ISimulatable</a></code> &mdash; element to connect other end of spring to
   </td>
</tr>
<tr>
<td class="paramSpacer">&nbsp;</td>
</tr>
<tr>
<td width="20px"></td><td><code><span class="label">k</span>:Number</code> (default = <code>0.01</code>)<code></code> &mdash; spring constant
   </td>
</tr>
<tr>
<td class="paramSpacer">&nbsp;</td>
</tr>
<tr>
<td width="20px"></td><td><code><span class="label">damp</span>:Number</code> (default = <code>0.4</code>)<code></code> &mdash; damping coefficient
   </td>
</tr>
</table>
</div>
<a name="methodDetail"></a>
<div class="detailSectionHeader">Method detail</div>
<a name="clone()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">clone</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td>
</tr>
</table>
<div class="detailBody">
<code>public function clone(invert:Boolean = true):<a href="../spring/Spring.html">Spring</a></code><p>
   Clone's a Spring for use with another element
   
   </p><span class="label">Parameters</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20px"></td><td><code><span class="label">invert</span>:Boolean</code> (default = <code>true</code>)<code></code> &mdash; specifies whether to invert the spring so that the force gets applied
   to element2
   
   </td>
</tr>
</table>
<p></p>
<span class="label">Returns</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20"></td><td><code><a href="../spring/Spring.html">Spring</a></code> &mdash; 
                        the newly cloned Spring
   
                        
                     </td>
</tr>
</table>
</div>
<a name="createDoubleSidedSpring()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">createDoubleSidedSpring</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public static function createDoubleSidedSpring(element1:<a href="../../element/ISimulatable.html">ISimulatable</a>, element2:<a href="../../element/ISimulatable.html">ISimulatable</a>, k:Number = 0.01, damp:Number = 0.1):void</code><p>
   Creates forces for both elements
   </p><span class="label">Parameters</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20px"></td><td><code><span class="label">element1</span>:<a href="../../element/ISimulatable.html">ISimulatable</a></code></td>
</tr>
<tr>
<td class="paramSpacer">&nbsp;</td>
</tr>
<tr>
<td width="20px"></td><td><code><span class="label">element2</span>:<a href="../../element/ISimulatable.html">ISimulatable</a></code></td>
</tr>
<tr>
<td class="paramSpacer">&nbsp;</td>
</tr>
<tr>
<td width="20px"></td><td><code><span class="label">k</span>:Number</code> (default = <code>0.01</code>)<code></code></td>
</tr>
<tr>
<td class="paramSpacer">&nbsp;</td>
</tr>
<tr>
<td width="20px"></td><td><code><span class="label">damp</span>:Number</code> (default = <code>0.1</code>)<code></code></td>
</tr>
</table>
</div>
<a name="generate()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">generate</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public override function generate(element:<a href="../../element/ISimulatable.html">ISimulatable</a>):void</code><span class="label">Parameters</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20px"></td><td><code><span class="label">element</span>:<a href="../../element/ISimulatable.html">ISimulatable</a></code></td>
</tr>
</table>
</div>
<a name="getPoint1InWorldSpace()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">getPoint1InWorldSpace</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public function getPoint1InWorldSpace():<a href="../../../math/Vector.html">Vector</a></code>
<p></p>
<span class="label">Returns</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20"></td><td><code><a href="../../../math/Vector.html">Vector</a></code></td>
</tr>
</table>
</div>
<a name="getPoint2InWorldSpace()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">getPoint2InWorldSpace</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public function getPoint2InWorldSpace():<a href="../../../math/Vector.html">Vector</a></code>
<p></p>
<span class="label">Returns</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20"></td><td><code><a href="../../../math/Vector.html">Vector</a></code></td>
</tr>
</table>
</div>
<a name="invert()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">invert</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public function invert():void</code><p>
   Inverts the spring so that the force is applied to element2 instead of 1
   </p></div>
<br>
<br>
<hr>
<br>
<p></p>
<center class="copyright"> 
</center>
</div>
</body>
</html>
<!-- -->
